package com.ruoyi.web.controller.system;

import java.util.*;

import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.ruoyi.common.core.controller.AbstractController;
import com.ruoyi.common.utils.R;
import com.ruoyi.system.domain.vo.RouterVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysMenu;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginBody;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.framework.web.service.SysLoginService;
import com.ruoyi.framework.web.service.SysPermissionService;
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.service.ISysMenuService;

/**
 * 登录验证
 * 
 * @author ruoyi
 */
@RestController
public class SysLoginController extends AbstractController
{
    @Autowired
    private SysLoginService loginService;

    @Autowired
    private ISysMenuService menuService;

    @Autowired
    private SysPermissionService permissionService;

    @Autowired
    private TokenService tokenService;

    /**
     * 登录方法
     * 
     * @param loginBody 登录信息
     * @return 结果
     */
    @PostMapping("/login")
    public R login(@RequestBody LoginBody loginBody)
    {
//        AjaxResult ajax = AjaxResult.success();
        // 生成令牌
//        String token = loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(),
//                loginBody.getUuid());
//        ajax.put(Constants.TOKEN, token);
//        ajax.put("data",token);
//        return ajax;
        return callData(()->loginService.login(loginBody.getUsername(), loginBody.getPassword(), loginBody.getCode(), loginBody.getUuid()));
    }


    @GetMapping("/auth/buttons")
    public R buttons(){
        List<String> authButton = new ArrayList<>();
        authButton.add("add");
        authButton.add("edit");
        authButton.add("delete");
        authButton.add("import");
        authButton.add("export");
        List<String> useProTable = new ArrayList<>();
        useProTable.add("add");
        useProTable.add("batchAdd");
        useProTable.add("export");
        useProTable.add("batchDelete");
        useProTable.add("status");
        Map<String,Object> result = new HashMap<>();
        result.put("authButton",authButton);
        result.put("useProTable",useProTable);
        return callData(()->result);
    }


    @GetMapping("/menu/list")
    public R menuList(){
        String str = "[{\n" +
                "\t\t\"path\": \"/home/index\",\n" +
                "\t\t\"component\": \"/home/index\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"home\",\n" +
                "\t\t\t\"icon\": \"HomeOutlined\",\n" +
                "\t\t\t\"title\": \"首页\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": true\n" +
                "\t\t}\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/dataScreen/index\",\n" +
                "\t\t\"component\": \"/dataScreen/index\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"dataScreen\",\n" +
                "\t\t\t\"icon\": \"PieChartOutlined\",\n" +
                "\t\t\t\"title\": \"数据大屏\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": true,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t}\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/auth\",\n" +
                "\t\t\"component\": \"/auth/page\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"auth\",\n" +
                "\t\t\t\"icon\": \"LockOutlined\",\n" +
                "\t\t\t\"title\": \"权限管理\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/auth/page\",\n" +
                "\t\t\t\t\"component\": \"/auth/page/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"pageMenu\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"页面权限\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/auth/button\",\n" +
                "\t\t\t\t\"component\": \"/auth/button/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"authButton\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"按钮权限\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/assembly\",\n" +
                "\t\t\"component\": \"/assembly/guide\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"assembly\",\n" +
                "\t\t\t\"icon\": \"MedicineBoxOutlined\",\n" +
                "\t\t\t\"title\": \"常用组件\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/assembly/guide\",\n" +
                "\t\t\t\t\"component\": \"/assembly/guide/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"guide\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"引导页\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/assembly/echarts\",\n" +
                "\t\t\t\t\"component\": \"/assembly/echarts/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"echarts\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"ECharts\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/assembly/svgIcon\",\n" +
                "\t\t\t\t\"component\": \"/assembly/svgIcon/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"svgIcon\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"SVG 图标\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/assembly/statistic\",\n" +
                "\t\t\t\t\"component\": \"/assembly/statistic/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"statistic\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"统计数值\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/assembly/qrCode\",\n" +
                "\t\t\t\t\"component\": \"/assembly/qrCode/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"qrCode\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"二维码\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/assembly/watermark\",\n" +
                "\t\t\t\t\"component\": \"/assembly/watermark/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"watermark\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"水印\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/feat\",\n" +
                "\t\t\"component\": \"/feat/tabs\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"feat\",\n" +
                "\t\t\t\"icon\": \"ControlOutlined\",\n" +
                "\t\t\t\"title\": \"常用功能\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/feat/tabs\",\n" +
                "\t\t\t\t\"component\": \"/feat/tabs/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"tabs\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"标签栏\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t},\n" +
                "\t\t\t\t\"children\": [{\n" +
                "\t\t\t\t\t\"path\": \"/feat/tabs/detail/:id\",\n" +
                "\t\t\t\t\t\"component\": \"/feat/tabs/detail\",\n" +
                "\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\"key\": \"tabsDetail\",\n" +
                "\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\"title\": \"Tab 详情\",\n" +
                "\t\t\t\t\t\t\"activeMenu\": \"/feat/tabs\",\n" +
                "\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\"isHide\": true,\n" +
                "\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t}\n" +
                "\t\t\t\t}]\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/feat/breadcrumb\",\n" +
                "\t\t\t\t\"component\": \"/feat/breadcrumb/flat\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"breadcrumb\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"面包屑\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t},\n" +
                "\t\t\t\t\"children\": [{\n" +
                "\t\t\t\t\t\t\"path\": \"/feat/breadcrumb/flat\",\n" +
                "\t\t\t\t\t\t\"component\": \"/feat/breadcrumb/flat/index\",\n" +
                "\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\"key\": \"breadcrumbFlat\",\n" +
                "\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\"title\": \"平级模式\",\n" +
                "\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t},\n" +
                "\t\t\t\t\t{\n" +
                "\t\t\t\t\t\t\"path\": \"/feat/breadcrumb/flatDetail\",\n" +
                "\t\t\t\t\t\t\"component\": \"/feat/breadcrumb/flat/detail\",\n" +
                "\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\"key\": \"breadcrumbFlatDetail\",\n" +
                "\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\"title\": \"平级详情\",\n" +
                "\t\t\t\t\t\t\t\"activeMenu\": \"/feat/breadcrumb/flat\",\n" +
                "\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\"isHide\": true,\n" +
                "\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t},\n" +
                "\t\t\t\t\t{\n" +
                "\t\t\t\t\t\t\"path\": \"/feat/breadcrumb/children\",\n" +
                "\t\t\t\t\t\t\"component\": \"/feat/breadcrumb/children/index\",\n" +
                "\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\"key\": \"breadcrumbChildren\",\n" +
                "\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\"title\": \"层级模式\",\n" +
                "\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t},\n" +
                "\t\t\t\t\t\t\"children\": [{\n" +
                "\t\t\t\t\t\t\t\"path\": \"/feat/breadcrumb/children/detail\",\n" +
                "\t\t\t\t\t\t\t\"component\": \"/feat/breadcrumb/children/detail\",\n" +
                "\t\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\t\"key\": \"breadcrumbChildrenDetail\",\n" +
                "\t\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\t\"title\": \"层级详情\",\n" +
                "\t\t\t\t\t\t\t\t\"activeMenu\": \"/feat/breadcrumb/children\",\n" +
                "\t\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\t\"isHide\": true,\n" +
                "\t\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t\t}]\n" +
                "\t\t\t\t\t}\n" +
                "\t\t\t\t]\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/feat/globalization\",\n" +
                "\t\t\t\t\"component\": \"/feat/globalization/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"globalization\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"国际化\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/feat/clipboard\",\n" +
                "\t\t\t\t\"component\": \"/feat/clipboard/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"clipboard\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"剪贴板\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/feat/colorPicker\",\n" +
                "\t\t\t\t\"component\": \"/feat/colorPicker/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"colorPicker\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"取色器\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/list\",\n" +
                "\t\t\"component\": \"/list/useProTable\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"list\",\n" +
                "\t\t\t\"icon\": \"TableOutlined\",\n" +
                "\t\t\t\"title\": \"列表页面\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/list/useProTable\",\n" +
                "\t\t\t\t\"component\": \"/list/useProTable/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"useProTable\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"使用 ProTable\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/list/useEditTable\",\n" +
                "\t\t\t\t\"component\": \"/list/useEditTable/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"useEditTable\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"使用 EditTable\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/list/useDragTable\",\n" +
                "\t\t\t\t\"component\": \"/list/useDragTable/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"useDragTable\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"使用 DragTable\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/list/useProList\",\n" +
                "\t\t\t\t\"component\": \"/list/useProList/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"ProList\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"使用 ProList\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/form\",\n" +
                "\t\t\"component\": \"/form/basicForm\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"form\",\n" +
                "\t\t\t\"icon\": \"FormOutlined\",\n" +
                "\t\t\t\"title\": \"表单页面\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/form/basicForm\",\n" +
                "\t\t\t\t\"component\": \"/form/basicForm/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"basicForm\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"基础表单\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/form/stepForm\",\n" +
                "\t\t\t\t\"component\": \"/form/stepForm/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"stepForm\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"分步表单\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/form/advancedForm\",\n" +
                "\t\t\t\t\"component\": \"/form/advancedForm/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"advancedForm\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"高级表单\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/details\",\n" +
                "\t\t\"component\": \"/details/basicDetails\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"details\",\n" +
                "\t\t\t\"icon\": \"ProfileOutlined\",\n" +
                "\t\t\t\"title\": \"详情页面\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\"path\": \"/details/basicDetails\",\n" +
                "\t\t\t\"component\": \"/details/basicDetails/index\",\n" +
                "\t\t\t\"meta\": {\n" +
                "\t\t\t\t\"key\": \"basicDetails\",\n" +
                "\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\"title\": \"基础详情页\",\n" +
                "\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t}\n" +
                "\t\t}]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/result\",\n" +
                "\t\t\"component\": \"/result/success\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"result\",\n" +
                "\t\t\t\"icon\": \"CheckCircleOutlined\",\n" +
                "\t\t\t\"title\": \"结果页面\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/result/success\",\n" +
                "\t\t\t\t\"component\": \"/result/success/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"success\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"成功页\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/result/fail\",\n" +
                "\t\t\t\t\"component\": \"/result/fail/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"fail\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"失败页\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/result/warning\",\n" +
                "\t\t\t\t\"component\": \"/result/warning/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"warning\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"警告页\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/result/info\",\n" +
                "\t\t\t\t\"component\": \"/result/info/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"info\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"信息页\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/menu\",\n" +
                "\t\t\"component\": \"/menu/menu1\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"menu\",\n" +
                "\t\t\t\"icon\": \"ProfileOutlined\",\n" +
                "\t\t\t\"title\": \"菜单嵌套\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/menu/menu1\",\n" +
                "\t\t\t\t\"component\": \"/menu/menu1/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"menu1\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"菜单1\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/menu/menu2\",\n" +
                "\t\t\t\t\"component\": \"/menu/menu2/menu21\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"menu2\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"菜单2\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t},\n" +
                "\t\t\t\t\"children\": [{\n" +
                "\t\t\t\t\t\t\"path\": \"/menu/menu2/menu21\",\n" +
                "\t\t\t\t\t\t\"component\": \"/menu/menu2/menu21/index\",\n" +
                "\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\"key\": \"menu21\",\n" +
                "\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\"title\": \"菜单2-1\",\n" +
                "\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t},\n" +
                "\t\t\t\t\t{\n" +
                "\t\t\t\t\t\t\"path\": \"/menu/menu2/menu22\",\n" +
                "\t\t\t\t\t\t\"component\": \"/menu/menu2/menu22/menu221\",\n" +
                "\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\"key\": \"menu22\",\n" +
                "\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\"title\": \"菜单2-2\",\n" +
                "\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t},\n" +
                "\t\t\t\t\t\t\"children\": [{\n" +
                "\t\t\t\t\t\t\t\t\"path\": \"/menu/menu2/menu22/menu221\",\n" +
                "\t\t\t\t\t\t\t\t\"component\": \"/menu/menu2/menu22/menu221/index\",\n" +
                "\t\t\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\t\t\"key\": \"menu221\",\n" +
                "\t\t\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\t\t\"title\": \"菜单2-2-1\",\n" +
                "\t\t\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t\t\t},\n" +
                "\t\t\t\t\t\t\t{\n" +
                "\t\t\t\t\t\t\t\t\"path\": \"/menu/menu2/menu22/menu222\",\n" +
                "\t\t\t\t\t\t\t\t\"component\": \"/menu/menu2/menu22/menu222/index\",\n" +
                "\t\t\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\t\t\"key\": \"menu222\",\n" +
                "\t\t\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\t\t\"title\": \"菜单2-2-2\",\n" +
                "\t\t\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t\t]\n" +
                "\t\t\t\t\t},\n" +
                "\t\t\t\t\t{\n" +
                "\t\t\t\t\t\t\"path\": \"/menu/menu2/menu23\",\n" +
                "\t\t\t\t\t\t\"component\": \"/menu/menu2/menu23/index\",\n" +
                "\t\t\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\t\t\"key\": \"menu23\",\n" +
                "\t\t\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\t\t\"title\": \"菜单2-3\",\n" +
                "\t\t\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t\t\t}\n" +
                "\t\t\t\t\t}\n" +
                "\t\t\t\t]\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/menu/menu3\",\n" +
                "\t\t\t\t\"component\": \"/menu/menu3/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"menu3\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"菜单3\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/system\",\n" +
                "\t\t\"component\": \"/system/accountManage\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"system\",\n" +
                "\t\t\t\"icon\": \"SettingOutlined\",\n" +
                "\t\t\t\"title\": \"系统管理\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/system/accountManage\",\n" +
                "\t\t\t\t\"component\": \"/system/accountManage/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"accountManage\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"账号管理\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/system/roleManage\",\n" +
                "\t\t\t\t\"component\": \"/system/roleManage/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"roleManage\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"角色管理\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/system/menuMange\",\n" +
                "\t\t\t\t\"component\": \"/system/menuMange/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"menuMange\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"菜单管理\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/link\",\n" +
                "\t\t\"component\": \"/link/bing\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"link\",\n" +
                "\t\t\t\"icon\": \"PaperClipOutlined\",\n" +
                "\t\t\t\"title\": \"外部链接\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t},\n" +
                "\t\t\"children\": [{\n" +
                "\t\t\t\t\"path\": \"/link/bing\",\n" +
                "\t\t\t\t\"component\": \"/link/bing/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"bing\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"Bing 内嵌\",\n" +
                "\t\t\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/link/gitee\",\n" +
                "\t\t\t\t\"component\": \"/link/gitee/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"gitee\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"Gitee 仓库\",\n" +
                "\t\t\t\t\t\"isLink\": \"https://gitee.com/HalseySpicy/Hooks-Admin\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/link/github\",\n" +
                "\t\t\t\t\"component\": \"/link/github/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"github\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"GitHub 仓库\",\n" +
                "\t\t\t\t\t\"isLink\": \"https://github.com/HalseySpicy/Hooks-Admin\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t},\n" +
                "\t\t\t{\n" +
                "\t\t\t\t\"path\": \"/link/juejin\",\n" +
                "\t\t\t\t\"component\": \"/link/juejin/index\",\n" +
                "\t\t\t\t\"meta\": {\n" +
                "\t\t\t\t\t\"key\": \"juejin\",\n" +
                "\t\t\t\t\t\"icon\": \"AppstoreOutlined\",\n" +
                "\t\t\t\t\t\"title\": \"JueJin 主页\",\n" +
                "\t\t\t\t\t\"isLink\": \"https://juejin.cn/user/3263814531551816/posts\",\n" +
                "\t\t\t\t\t\"isHide\": false,\n" +
                "\t\t\t\t\t\"isFull\": false,\n" +
                "\t\t\t\t\t\"isAffix\": false\n" +
                "\t\t\t\t}\n" +
                "\t\t\t}\n" +
                "\t\t]\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/about/index\",\n" +
                "\t\t\"component\": \"/about/index\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"about\",\n" +
                "\t\t\t\"icon\": \"ExclamationCircleOutlined\",\n" +
                "\t\t\t\"title\": \"关于项目\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": false,\n" +
                "\t\t\t\"isFull\": false,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t}\n" +
                "\t},\n" +
                "\t{\n" +
                "\t\t\"path\": \"/noLayout/index\",\n" +
                "\t\t\"component\": \"/noLayout/index\",\n" +
                "\t\t\"meta\": {\n" +
                "\t\t\t\"key\": \"noLayout\",\n" +
                "\t\t\t\"icon\": \"SelectOutlined\",\n" +
                "\t\t\t\"title\": \"No Layout\",\n" +
                "\t\t\t\"isLink\": \"\",\n" +
                "\t\t\t\"isHide\": true,\n" +
                "\t\t\t\"isFull\": true,\n" +
                "\t\t\t\"isAffix\": false\n" +
                "\t\t}\n" +
                "\t}\n" +
                "]";
        List<JSONObject> list = JSON.parseArray(str,JSONObject.class);
        return callData(()->list);
    }







    /**
     * 获取用户信息
     * 
     * @return 用户信息
     */
    @GetMapping("getInfo")
    public AjaxResult getInfo()
    {
        LoginUser loginUser = SecurityUtils.getLoginUser();
        SysUser user = loginUser.getUser();
        // 角色集合
        Set<String> roles = permissionService.getRolePermission(user);
        // 权限集合
        Set<String> permissions = permissionService.getMenuPermission(user);
        if (!loginUser.getPermissions().equals(permissions))
        {
            loginUser.setPermissions(permissions);
            tokenService.refreshToken(loginUser);
        }
        AjaxResult ajax = AjaxResult.success();
        JSONObject result = new JSONObject();
        result.put("user",user);
        result.put("roles",roles);
        result.put("permissions",permissions);

        ajax.put("data",result);

//        ajax.put("user", user);
//        ajax.put("roles", roles);
//        ajax.put("permissions", permissions);
        return ajax;
    }

    /**
     * 获取路由信息
     * 
     * @return 路由信息
     */
    @GetMapping("getRouters")
    public R getRouters()
    {
        Long userId = SecurityUtils.getUserId();
        List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId,getSystemType());
        List<RouterVo>  routerVoList = menuService.buildMenus(menus);
        return callData(()->routerVoList);
    }




}
